package pe.com.ztaxi.taxis.controller.rest;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import pe.com.ztaxi.taxis.model.UnidadMovil;
import pe.com.ztaxi.taxis.service.UnidadMovilService;

@Controller
@RequestMapping("/rest")
public class UnidadMovilControllerRest {

	@Autowired
	UnidadMovilService unidadMovilService;

	@RequestMapping(value = "/unidadMovil/{id}", method = RequestMethod.GET)
	@ResponseBody
	public UnidadMovil buscarUnidadMovil(@PathVariable("id") int id) {		
		return unidadMovilService.buscarPorCodigo(id);
	}
	
	@RequestMapping(value="/unidadMovil/ubicacion", method=RequestMethod.POST)
	@ResponseBody
	public String actualizarUbicacion(UnidadMovil unidadMovil) {
		unidadMovilService.actualizarUbicacion(unidadMovil);
		return "Ubicacion actualizada";
	}
	
	@RequestMapping(value="/unidadMovil/{id}/destinoFinal", method=RequestMethod.GET)
	@ResponseBody
	public boolean confirmaDestinoFinal(@PathVariable("id") int id) {
		UnidadMovil unidad = unidadMovilService.buscarPorCodigo(id);
		unidadMovilService.actualizarEstadoDestinoFinal(unidad);
		return true;
	}
	
	@RequestMapping(value="/unidadMovil"
			+ "/{id}/deshacerDestinoFinal", method=RequestMethod.GET)
	@ResponseBody
	public boolean validaDeshacerDestinoFinal(@PathVariable("id") int id) {
		UnidadMovil unidad = unidadMovilService.buscarPorCodigo(id);
		return unidadMovilService.deshacerDestinoFinal(unidad);
	}

}
